In mobile telecommunications networks (e.g., cellular telephone systems), users with mobile terminals are now, in addition to having telephonic voice conversations, able to receive multimedia data such as, for example, Internet web pages and downloaded videos. As such, the need to provide substantial data “content” to a user of a mobile device has developed. For these purposes and for reasons of efficiency, it has recently been recognized that it may be advantageous to provide local storage within the radio access network (RAN) portion of a mobile telecommunications network, rather than merely in the core network (CORE), in order to buffer or cache the data being downloaded. That is, for example, it may be advantageous to provide local caches at a mobile base station, in order to buffer the data being delivered to the mobile terminals which are communicating with the given base station.
However, given such an architecture having local caches within the RAN, consider the situation in which a user moves among these local data sources in a mobile network—that is, for example, consider when a mobile user moves from communicating with one mobile base station to another, in an architecture having local caches at the various base stations. When such a mobile user is making use of such a local data source and then moves from one base station to another, he or she loses access to the local data store that was being employed. Thus, the local data store at the new location (i.e., the base station with which the mobile device is now communicating) will need to freshly load the data that was being downloaded by the mobile—namely the data that had been stored in the memory store of the base station with which it was previously communicating.
Note that the communication path between the terminal and the data source can be divided into a local path and a global path. The local path is the portion of the pathway between the mobile terminal and the data source that changes when the user moves. For example, the local path may be the path between the user terminal and the mobile base station with which it is currently communicating.
Now consider as an example a user that requests data that happens not to be stored in the associated local storage cache. This “first” local cache will request the data from some other data store (e.g., a data store in the CORE network), resulting in a typical delay of one-half to several seconds. However, a quickly moving mobile user (e.g., one on a moving train) can change to a different local path as often as once every few seconds. When the user moves to such another, “second” local path, the data store supporting that second local path could suffer a cache miss as well, thereby requesting the same data, resulting in another delay. For large data requests that take several seconds to deliver to a local cache, the user may again move even before the second local store can begin serving data. Even for small data requests, the latency may effectively halve the throughput to the terminal, as both the local data store and the terminal wait for data.
In this scenario, as the user continues to move, each successive cache may suffer a miss, causing a cascade of misses. At a minimum, these cascading cache misses may result in increasingly long delays in delivering the data. In a worst-case scenario, if the user keeps moving and the data request is large enough, the user's download may permanently stall.